[INFO] cloning repository https://github.com/NNTin/gsnake-levels
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/NNTin/gsnake-levels" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNNTin%2Fgsnake-levels", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNNTin%2Fgsnake-levels'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1cb6b0a64741a3f35f0714fa07c2936b4eb17628
[INFO] testing NNTin/gsnake-levels against try#28f95933dc0727396c07b48d0a8cb5211b7fb472 for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNNTin%2Fgsnake-levels" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/NNTin/gsnake-levels
[INFO] finished tweaking git repo https://github.com/NNTin/gsnake-levels
[INFO] tweaked toml for git repo https://github.com/NNTin/gsnake-levels written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/NNTin/gsnake-levels on toolchain 28f95933dc0727396c07b48d0a8cb5211b7fb472
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/NNTin/gsnake-levels already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ed0eb6053bafba120341c484b717af999b46ed7c442d490bc406ea91a9e87601
[INFO] running `Command { std: "docker" "start" "-a" "ed0eb6053bafba120341c484b717af999b46ed7c442d490bc406ea91a9e87601", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed0eb6053bafba120341c484b717af999b46ed7c442d490bc406ea91a9e87601", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed0eb6053bafba120341c484b717af999b46ed7c442d490bc406ea91a9e87601", kill_on_drop: false }`
[INFO] [stdout] ed0eb6053bafba120341c484b717af999b46ed7c442d490bc406ea91a9e87601
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 69ed23e43112cb8bf3ac61bb96fb133da6a4e09399472d31343c1f5f1549d0d7
[INFO] running `Command { std: "docker" "start" "-a" "69ed23e43112cb8bf3ac61bb96fb133da6a4e09399472d31343c1f5f1549d0d7", kill_on_drop: false }`
[INFO] [stderr]    Compiling zmij v1.0.16
[INFO] [stderr]    Compiling Inflector v0.11.4
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling gsnake-levels v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr] warning: gsnake-levels@0.1.0: Standalone mode - using git dependency for gsnake-core
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling ts-rs-macros v7.1.1
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling ts-rs v7.1.1
[INFO] [stderr]    Compiling clap v4.5.54
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling gsnake-core v0.1.0 (https://github.com/nntin/gsnake?branch=main#1b5c6c93)
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.72s
[INFO] running `Command { std: "docker" "inspect" "69ed23e43112cb8bf3ac61bb96fb133da6a4e09399472d31343c1f5f1549d0d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "69ed23e43112cb8bf3ac61bb96fb133da6a4e09399472d31343c1f5f1549d0d7", kill_on_drop: false }`
[INFO] [stdout] 69ed23e43112cb8bf3ac61bb96fb133da6a4e09399472d31343c1f5f1549d0d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 07de8d2554c4537f7ca66c0b24064c61f71209b160a3da0c9ce9a23de79986a4
[INFO] running `Command { std: "docker" "start" "-a" "07de8d2554c4537f7ca66c0b24064c61f71209b160a3da0c9ce9a23de79986a4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling gsnake-levels v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr] warning: gsnake-levels@0.1.0: Standalone mode - using git dependency for gsnake-core
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.58s
[INFO] running `Command { std: "docker" "inspect" "07de8d2554c4537f7ca66c0b24064c61f71209b160a3da0c9ce9a23de79986a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "07de8d2554c4537f7ca66c0b24064c61f71209b160a3da0c9ce9a23de79986a4", kill_on_drop: false }`
[INFO] [stdout] 07de8d2554c4537f7ca66c0b24064c61f71209b160a3da0c9ce9a23de79986a4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+28f95933dc0727396c07b48d0a8cb5211b7fb472" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 033356ea847438456777e68aca98b5c31227a06c11ced73653154f70366fc4ae
[INFO] running `Command { std: "docker" "start" "-a" "033356ea847438456777e68aca98b5c31227a06c11ced73653154f70366fc4ae", kill_on_drop: false }`
[INFO] [stderr]    Compiling gsnake-levels v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: gsnake-levels@0.1.0: Standalone mode - using git dependency for gsnake-core
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.97s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gsnake_levels-72d1ffc7ea615974)
[INFO] [stdout] 
[INFO] [stdout] running 84 tests
[INFO] [stdout] test analysis::tests::test_analyze_level_complete ... ok
[INFO] [stdout] test analysis::tests::test_calculate_complexity ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_all_present ... ok
[INFO] [stdout] test analysis::tests::test_calculate_complexity_high_density ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_none_present ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_partial ... ok
[INFO] [stdout] test analysis::tests::test_detect_horizontal_wall_pattern ... ok
[INFO] [stdout] test analysis::tests::test_detect_no_obstacles ... ok
[INFO] [stdout] test analysis::tests::test_detect_scattered_pattern ... ok
[INFO] [stdout] test analysis::tests::test_detect_vertical_wall_pattern ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id_max_u32 ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_reports_missing_file ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_multiple_hyphens ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_negative_timestamp ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_no_hyphen ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_uniqueness ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_floating_and_spikes ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_empty_timestamp ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_timestamp_exceeds_u32 ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_simple_level ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_validates_structure ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_empty_array ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id_small_timestamp ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_all_mechanics ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_horizontal_wall ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_large_timestamp ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_json ... ok
[INFO] [stdout] test migration::tests::test_parse_timestamp_from_actual_level_file ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_key_reports_step_context ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_pattern ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_high_density ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_many_food ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_from_real_fixture ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_missing_file ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_key ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_short_keys ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_long_keys ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_all_solved ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_all_playbacks_missing_difficulty_dirs ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playback_for_level_returns_unsolved_on_parse_error ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_non_numeric_timestamp ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playbacks_for_difficulty_no_json_files ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_valid_file ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_empty ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_reports_malformed_json ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_wrong_schema ... ok
[INFO] [stdout] test playback_generator::tests::test_update_solved_status_from_results_empty ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_all_unsolved ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_nonexistent_directory ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_success_all_difficulties ... ok
[INFO] [stdout] test playback_generator::tests::test_update_solved_status_from_results ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_all_levels_toml ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_sorts_by_id ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_missing_levels_root_fails ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_resolves_levels_root_from_package_directory ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_rejects_unknown_difficulty ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_single_directory ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validation_report_format_is_stable ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_absolute_path ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_missing_levels_directory ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_nested_levels ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_easy_level ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_no_levels_component ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_medium_level ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_hard_level ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_resolves_levels_root_from_repo_root ... ok
[INFO] [stdout] test verify::tests::test_verify_level_missing_level_file ... ok
[INFO] [stdout] test verify::tests::test_verify_level_malformed_playback_file ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_with_override ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_normalizes_difficulty_filter ... ok
[INFO] [stdout] test verify::tests::test_verify_level_returns_not_complete_error ... ok
[INFO] [stdout] test verify::tests::test_verify_level_returns_game_over_error ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_invalid_toml ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_difficulty_aggregates_multiple_issues ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_missing_json_file ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_invalid_json_format ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playback_for_level_writes_compatible_json ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_all_levels_toml_aggregates_across_difficulties ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_missing_levels_toml ... ok
[INFO] [stdout] test verify::tests::test_verify_level_missing_playback_file ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_valid_levels ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 84 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/gsnake_levels-6b6666450ce58485)
[INFO] [stdout] 
[INFO] [stdout] running 98 tests
[INFO] [stdout] test analysis::tests::test_calculate_complexity ... ok
[INFO] [stdout] test analysis::tests::test_analyze_level_complete ... ok
[INFO] [stdout] test analysis::tests::test_calculate_complexity_high_density ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_all_present ... ok
[INFO] [stdout] test analysis::tests::test_detect_horizontal_wall_pattern ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_none_present ... ok
[INFO] [stdout] test analysis::tests::test_detect_mechanics_partial ... ok
[INFO] [stdout] test analysis::tests::test_detect_scattered_pattern ... ok
[INFO] [stdout] test analysis::tests::test_detect_no_obstacles ... ok
[INFO] [stdout] test analysis::tests::test_detect_vertical_wall_pattern ... ok
[INFO] [stdout] test generate::tests::test_parse_filter_defaults_to_all_difficulties ... ok
[INFO] [stdout] test generate::tests::test_parse_filter_is_case_insensitive_and_ordered ... ok
[INFO] [stdout] test generate::tests::test_parse_filter_unknown_value_fails ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_reports_missing_file ... ok
[INFO] [stdout] test generate::tests::test_load_level_preserves_explicit_total_food ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_large_timestamp ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_negative_timestamp ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_non_numeric_timestamp ... ok
[INFO] [stdout] test generate::tests::test_load_level_derives_total_food_when_missing ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id ... ok
[INFO] [stdout] test generate::tests::test_run_generate_levels_json_invalid_level_json_fails ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_no_hyphen ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_empty_timestamp ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_multiple_hyphens ... ok
[INFO] [stdout] test generate::tests::test_run_generate_levels_json_missing_level_file_fails ... ok
[INFO] [stdout] test generate::tests::test_run_generate_levels_json_success_from_package_directory ... ok
[INFO] [stdout] test migration::tests::test_parse_timestamp_from_actual_level_file ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id ... ok
[INFO] [stdout] test migration::tests::test_parse_invalid_timestamp_exceeds_u32 ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id_max_u32 ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_empty_array ... ok
[INFO] [stdout] test migration::tests::test_parse_valid_id_small_timestamp ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_all_mechanics ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_horizontal_wall ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_simple_level ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_uniqueness ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_high_density ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_json ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_many_food ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_floating_and_spikes ... ok
[INFO] [stdout] test generate::tests::test_run_generate_levels_json_with_sync_enabled ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_missing_file ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_from_real_fixture ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_key_reports_step_context ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_short_keys ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_all_playbacks_missing_difficulty_dirs ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_all_solved ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_valid_file ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_all_unsolved ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_long_keys ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playbacks_for_difficulty_no_json_files ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_normalizes_difficulty_filter ... ok
[INFO] [stdout] test name_generator::tests::test_generate_name_with_pattern ... ok
[INFO] [stdout] test playback_generator::tests::test_get_solved_unsolved_lists_empty ... ok
[INFO] [stdout] test generate::tests::test_run_generate_levels_json_success_from_repo_root ... ok
[INFO] [stdout] test playback_generator::tests::test_update_solved_status_from_results_empty ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_success_all_difficulties ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_resolves_levels_root_from_repo_root ... ok
[INFO] [stdout] test playback_generator::tests::test_update_solved_status_from_results ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_sorts_by_id ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_difficulty_aggregates_multiple_issues ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_invalid_toml ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_invalid_json_format ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_single_directory ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_all_levels_toml_aggregates_across_difficulties ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validation_report_format_is_stable ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_absolute_path ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_missing_levels_toml ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_resolves_levels_root_from_package_directory ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_nested_levels ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_missing_json_file ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_hard_level ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_easy_level ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_valid_medium_level ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_with_override ... ok
[INFO] [stdout] test validate_levels_toml::tests::test_validate_valid_levels ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_all_levels_toml ... ok
[INFO] [stdout] test playback::tests::test_load_playback_directions_invalid_key ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playback_for_level_writes_compatible_json ... FAILED
[INFO] [stdout] test playback::tests::test_load_playback_directions_wrong_schema ... ok
[INFO] [stdout] test playback_generator::tests::test_generate_playback_for_level_returns_unsolved_on_parse_error ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_missing_levels_directory ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_missing_levels_root_fails ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_reports_malformed_json ... ok
[INFO] [stdout] test verify::tests::test_resolve_playback_path_no_levels_component ... ok
[INFO] [stdout] test verify_all::tests::test_infer_playback_path_fails_when_level_outside_root ... ok
[INFO] [stdout] test migration::tests::test_migrate_level_id_validates_structure ... ok
[INFO] [stdout] test verify::tests::test_verify_level_malformed_playback_file ... ok
[INFO] [stdout] test verify::tests::test_verify_level_missing_level_file ... ok
[INFO] [stdout] test verify::tests::test_verify_level_returns_game_over_error ... ok
[INFO] [stdout] test verify::tests::test_verify_level_returns_not_complete_error ... ok
[INFO] [stdout] test sync_metadata::tests::test_sync_metadata_with_roots_rejects_unknown_difficulty ... ok
[INFO] [stdout] test toml_generator::tests::test_generate_levels_toml_nonexistent_directory ... ok
[INFO] [stdout] test verify::tests::test_verify_level_missing_playback_file ... ok
[INFO] [stdout] test verify_all::tests::test_run_verify_all_fails_when_level_file_missing ... ok
[INFO] [stdout] test verify_all::tests::test_run_verify_all_marks_unsolved_when_playback_is_invalid ... ok
[INFO] [stdout] test verify_all::tests::test_run_verify_all_skips_missing_playback_without_mutating_status ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- playback_generator::tests::test_generate_playback_for_level_writes_compatible_json stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'playback_generator::tests::test_generate_playback_for_level_writes_compatible_json' (481) panicked at src/playback_generator.rs:164:14:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6417806afef8 - std[d054f6f42beb1baa]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6417806afef8 - std[d054f6f42beb1baa]::backtrace_rs::backtrace::trace_unsynchronized::<std[d054f6f42beb1baa]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6417806afef8 - std[d054f6f42beb1baa]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x6417806afef8 - <<std[d054f6f42beb1baa]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[5a1c3e9896636f3a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x6417806c75ba - <core[5a1c3e9896636f3a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x6417806c75ba - core[5a1c3e9896636f3a]::fmt::write
[INFO] [stdout]    6:     0x6417806b4eb2 - std[d054f6f42beb1baa]::io::default_write_fmt::<alloc[154f689e5dd3bae5]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x6417806b4eb2 - <alloc[154f689e5dd3bae5]::vec::Vec<u8> as std[d054f6f42beb1baa]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x64178068c776 - <std[d054f6f42beb1baa]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x64178068c776 - std[d054f6f42beb1baa]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x6417806a7589 - std[d054f6f42beb1baa]::panicking::default_hook
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x6417805d2f6c - <alloc[154f689e5dd3bae5]::boxed::Box<dyn for<'a, 'b> core[5a1c3e9896636f3a]::ops::function::Fn<(&'a std[d054f6f42beb1baa]::panic::PanicHookInfo<'b>,), Output = ()> + core[5a1c3e9896636f3a]::marker::Send + core[5a1c3e9896636f3a]::marker::Sync> as core[5a1c3e9896636f3a]::ops::function::Fn<(&std[d054f6f42beb1baa]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x6417805d2f6c - test[fad20673b750c10e]::test_main_inner::<test[fad20673b750c10e]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x6417806a7742 - <alloc[154f689e5dd3bae5]::boxed::Box<dyn for<'a, 'b> core[5a1c3e9896636f3a]::ops::function::Fn<(&'a std[d054f6f42beb1baa]::panic::PanicHookInfo<'b>,), Output = ()> + core[5a1c3e9896636f3a]::marker::Send + core[5a1c3e9896636f3a]::marker::Sync> as core[5a1c3e9896636f3a]::ops::function::Fn<(&std[d054f6f42beb1baa]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x6417806a7742 - std[d054f6f42beb1baa]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x64178068c832 - std[d054f6f42beb1baa]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x641780683909 - std[d054f6f42beb1baa]::sys::backtrace::__rust_end_short_backtrace::<std[d054f6f42beb1baa]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x64178068d63d - __rustc[7ab284efd7f33ea8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x6417806c7d4c - core[5a1c3e9896636f3a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6417806c7ac2 - core[5a1c3e9896636f3a]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/result.rs:1872:5
[INFO] [stdout]   20:     0x64178041491f - <core[5a1c3e9896636f3a]::result::Result<std[d054f6f42beb1baa]::fs::ReadDir, std[d054f6f42beb1baa]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x64178041491f - gsnake_levels[42c3806c2102ce67]::playback_generator::tests::first_easy_level_fixture
[INFO] [stdout]                                at /opt/rustwide/workdir/src/playback_generator.rs:164:14
[INFO] [stdout]   22:     0x64178041935a - gsnake_levels[42c3806c2102ce67]::playback_generator::tests::test_generate_playback_for_level_writes_compatible_json
[INFO] [stdout]                                at /opt/rustwide/workdir/src/playback_generator.rs:177:26
[INFO] [stdout]   23:     0x641780410287 - gsnake_levels[42c3806c2102ce67]::playback_generator::tests::test_generate_playback_for_level_writes_compatible_json::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/playback_generator.rs:175:65
[INFO] [stdout]   24:     0x641780449cc6 - <gsnake_levels[42c3806c2102ce67]::playback_generator::tests::test_generate_playback_for_level_writes_compatible_json::{closure#0} as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x6417805c604b - <fn() -> core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x6417805c604b - test[fad20673b750c10e]::__rust_begin_short_backtrace::<core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>, fn() -> core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:724:18
[INFO] [stdout]   27:     0x6417805d38c5 - test[fad20673b750c10e]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:747:74
[INFO] [stdout]   28:     0x6417805d38c5 - <core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   29:     0x6417805d38c5 - std[d054f6f42beb1baa]::panicking::catch_unwind::do_call::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>, core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x6417805d38c5 - std[d054f6f42beb1baa]::panicking::catch_unwind::<core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>, core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x6417805d38c5 - std[d054f6f42beb1baa]::panic::catch_unwind::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<test[fad20673b750c10e]::run_test_in_process::{closure#0}>, core[5a1c3e9896636f3a]::result::Result<(), alloc[154f689e5dd3bae5]::string::String>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x6417805d38c5 - test[fad20673b750c10e]::run_test_in_process
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:747:27
[INFO] [stdout]   33:     0x6417805d38c5 - test[fad20673b750c10e]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:668:43
[INFO] [stdout]   34:     0x6417805ce424 - test[fad20673b750c10e]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/test/src/lib.rs:698:41
[INFO] [stdout]   35:     0x6417805ce424 - std[d054f6f42beb1baa]::sys::backtrace::__rust_begin_short_backtrace::<test[fad20673b750c10e]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x6417805d6942 - std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked::<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   37:     0x6417805d6942 - <core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   38:     0x6417805d6942 - std[d054f6f42beb1baa]::panicking::catch_unwind::do_call::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x6417805d6942 - std[d054f6f42beb1baa]::panicking::catch_unwind::<(), core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x6417805d6942 - std[d054f6f42beb1baa]::panic::catch_unwind::<core[5a1c3e9896636f3a]::panic::unwind_safe::AssertUnwindSafe<std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x6417805d6942 - std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked::<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   42:     0x6417805d6942 - <std[d054f6f42beb1baa]::thread::lifecycle::spawn_unchecked<test[fad20673b750c10e]::run_test::{closure#1}, ()>::{closure#1} as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x6417806af34f - <alloc[154f689e5dd3bae5]::boxed::Box<dyn core[5a1c3e9896636f3a]::ops::function::FnOnce<(), Output = ()> + core[5a1c3e9896636f3a]::marker::Send> as core[5a1c3e9896636f3a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   44:     0x6417806af34f - <std[d054f6f42beb1baa]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/28f95933dc0727396c07b48d0a8cb5211b7fb472/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   45:     0x7f3f8bb3faa4 - <unknown>
[INFO] [stdout]   46:     0x7f3f8bbcca64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     playback_generator::tests::test_generate_playback_for_level_writes_compatible_json
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 97 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin gsnake-levels`
[INFO] running `Command { std: "docker" "inspect" "033356ea847438456777e68aca98b5c31227a06c11ced73653154f70366fc4ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "033356ea847438456777e68aca98b5c31227a06c11ced73653154f70366fc4ae", kill_on_drop: false }`
[INFO] [stdout] 033356ea847438456777e68aca98b5c31227a06c11ced73653154f70366fc4ae
